"""
在 Python 中，函数参数的传递是 按对象引用传递，也称为 传对象。
这意味着函数参数传递的是对象的引用（内存地址），而不是对象的副本。
当在函数内部修改传入的可变对象时，这些修改会影响函数外部的对象，因为它们引用的是同一个对象。
"""


def modify_list(my_list):
    # 这个例子说明了在函数内部对传入的可变对象进行修改会影响函数外部的对象，因为它们引用的是同一个对象。
    my_list.append(4)  # 在传入的列表末尾添加元素4
    # 但是，重新赋值参数并不会影响函数外部的对象，因为这会改变参数的引用，而不是原始对象本身。
    my_list = [1, 2, 3]  # 重新赋值一个新的列表


if __name__ == '__main__':
    original_list = [0]
    modify_list(original_list)
    print(original_list)  # 输出：[0, 4]